package cate.game.play.config.scene;

import cate.common.table.fight.scene.row.FightSceneRow;
import cate.game.play.support.PlayBuildContext;
import cate.game.table.TableManager;
import easy.java.dev.note.NoteClass;

import java.util.HashMap;
import java.util.Map;

@NoteClass("场景配置")
public class SceneCfgHolder {

    private Map<Integer, SceneCfg> map = new HashMap<>();

    public SceneCfg get(int id) {
        return map.get(id);
    }

    public void init(TableManager table) {
        map.clear();
        table.fightScene.scene.getList().forEach(this::create);
    }

    public void init(PlayBuildContext context) {
        map.clear();
        context.sceneExcel().scene.getList().forEach(this::create);
    }

    private void create(FightSceneRow row){
        SceneCfg cfg = new SceneCfg().init(row);
        map.put(cfg.id, cfg);
    }


}
